1. Field of the Invention
The present invention relates to the field of graphical user interfaces for computer systems and, more particularly, to a method and apparatus for providing an intuitive methodology for an operator to control remote devices with a computer controlled object-oriented user interface utilizing animated graphic images.
2. Art Background
Most popular graphical user interfaces that are available today, such as the Xerox Star®, Apple Macintosh®, and Microsoft Windows graphical user interfaces, are based upon the “desktop metaphor.” In a desktop metaphor system, the display screen is treated as a virtual desktop. Graphical symbols placed on the virtual desktop (i.e. the display screen) are used to represent common objects found in an office environment such as files, file folders, and printers. These desktop metaphor systems have several limitations which hamper the effectiveness of the man-machine interface between the human operator and the computer system.
One problem with the existing desktop metaphor graphical user interfaces is the use of a hierarchical file system. Most desktop metaphor graphical user interfaces are based upon a computer having a file system in which the computer files are organized in a hierarchical structure. The hierarchical file system structure has a root directory and several sub-directories within the root directory. Each sub-directory may have sub-sub-directories, and so on. The hierarchical file system structure is graphically illustrated on the screen as some type of root file cabinet with file folders inside. The Microsoft Windows and Apple Macintosh® operating systems both use hierarchical file systems illustrated as file folders.
The hierarchical structure of file folders is often very confusing to new users. For example, many users get lost while navigating through hierarchical file systems because the system of keeping files in file folders, which are in other file folders nested to an arbitrary depth is inherently confusing. Users become lost because each file folder looks like every other file folder, and the user is provided with little feedback as to his location within the file system hierarchy. Also, each file folder provides no information as to what the file folder contains other than a user-defined label. For example, except for a short text label, which may have been defined by another user, the user generally is not able to determine whether an open folder is an accounting file folder containing spreadsheet data, or a data base file folder containing a customer data base. Therefore, navigating through the complex file system hierarchy is difficult since the current desktop metaphor graphical user interface offers little feedback as to a user's location within the file hierarchy.
In current graphical user interface systems based upon the desktop metaphor, certain applications often do not fit well into a desktop metaphor environment conceptually. Specifically, non-office related applications may be inappropriate for a system based upon the desktop metaphor. For example, in a desktop metaphor, an application that controls a television would have to be placed into a “paper” file folder on the desktop.
Another common problem with desktop metaphor user interfaces is that displaying a large number of applications on the desktop results in a cluttered desktop. Many users of desktop metaphor systems keep large numbers of applications and files, usually in icon form, on the display screen. Some attempt is made to use a graphical representation that identifies the type of application or file. However, when a user wishes to open a particular application or file, the user must search the display screen to find the desired icon just as if the user were trying to find a particular paper file on a messy desktop. Icons placed the desktop have no apparent hierarchy, and are all equal. This equality may confuse a user, and may create problems when the user wants to switch from one task to another.
Several systems have evolved to improve the organization of the desktop metaphor graphical user interface. One system is the concept of “Rooms”. See, Patrick Chan, “Learning Considerations in User Interface Design. The Room Model”, Report CS-84-16, University of Waterloo Computer Science Department, Ontario, Canada, July, 1984; Brenda Laurel, “Computers as Theatre”, Addison-Wesley Publishing Co., 1991; Brenda Laurel, “The Art of Human-Computer Interface Design”, Addison-Wesley Publishing Co., 1990; U.S. Pat. No. 5,072,412, Henderson, Jr. et al., “User Interface with Multiple Workspaces for Sharing Display System Objects”, and the references cited therein, and also see, Jeffrey J. Blatt, “A Primer on-User Interface Software Patents”, Vol. 9, No. 4, The Computer Lawyer (1992).
In systems based upon the Rooms concept, the user creates different rooms where the user performs a single task or a group of related tasks. Each room represents an individual virtual desktop with a group of associated tasks. Each room is given a label that identifies the room with the room's functions. For example, a user may create a mail room, a typing room with a word processor, and an accounting room with a spreadsheet. Each room has only those icons and windows that are associated with the particular task of the room, as well as any windows shared by all rooms, such as a clock.
To switch between tasks in a system that uses the Rooms concept, a user moves between the different rooms that are associated with the different tasks. For example, to go from a spreadsheet to retrieve email, a user moves from the accounting room to the mail room. To move between the two rooms, a user selects an icon that represents a door connecting the current room to the other room. Users can create doors between any of the available rooms.
Although the Rooms concept helps solve the problem of the “cluttered desktop,” the Rooms concept still relies upon the common desktop metaphor. For example, the Rooms interface concept does not help simplify the confusing hierarchical file structure used to store information. The Rooms concept also does little to solve the form and function inconsistencies that are apparent when applications which do not fit into the desktop metaphor are added to the system.
In prior art graphical user interfaces, each time a new piece of hardware is introduced to the system a new piece of control software must also be added by the user. For example, if a user of an Apple® Macintosh® or a user of Microsoft® Windows desires to add a new printer to the system, the user must also install a new printer driver to control the added printer. Therefore, each time a user desires to add a new device to the system, the user must also follow a complicated procedure to add the appropriate software.
As will be described, the present invention provides an improved graphical user interface that overcomes several of the problems associated with desktop metaphor systems. A method and apparatus for obtaining the user interface of a remote device without requiring the user to load the related software is also disclosed. The remote device can be controlled using the remote device's user interface as displayed on the present invention's display screen. Although the user interface is described with reference to the control of remote devices, it will be appreciated from the discussion that follows that the user interface may be applied to a variety of applications in computer workstations, portable computers, and hand held control systems.